From b20de1af9bf5aca633074435299c4e6e17594435 Mon Sep 17 00:00:00 2001 From: robertl Date: Mon, 14 Aug 2006 00:02:49 +0000 Subject: [PATCH] Various tweaks to restore happiness to the MSVC builds. gbfile: use fatal instead of abort. git-svn-id: http://gpsbabel.googlecode.com/svn/trunk@2299 f51c46e8-681c-474f-0cfe-069cfd0219fb --- gpsbabel/gbfile.c | 32 +- gpsbabel/msvc/GPSBabel.sln | 14 +- gpsbabel/msvc/GPSBabel.vcproj | 872 +++++++++++++++++++++++++++++++++- gpsbabel/msvc/config.h | 6 + gpsbabel/stmsdf.c | 5 +- 5 files changed, 884 insertions(+), 45 deletions(-) diff --git a/gpsbabel/gbfile.c b/gpsbabel/gbfile.c index 35748b776..57fb40fda 100644 --- a/gpsbabel/gbfile.c +++ b/gpsbabel/gbfile.c @@ -34,12 +34,13 @@ /* taken from minigzip.c (part of the zlib project) */ # include # include -# define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY) +# define SET_BINARY_MODE(file) _setmode(fileno(file), O_BINARY) #else # define SET_BINARY_MODE(file) #endif #define MYNAME "gbfile" +#define NO_ZLIB "No zlib support" /* About the ZLIB_INHIBITED stuff: * @@ -159,7 +160,7 @@ gbfclose(gbfile *file) #if !ZLIB_INHIBITED gzclose(file->handle.gz); #else - abort(); + fatal(NO_ZLIB); #endif } else { @@ -218,12 +219,10 @@ gbfread(void *buf, const gbsize_t size, const gbsize_t members, gbfile *file) if ((size == 0) || (members == 0)) return 0; if (file->gzapi) { - int result; #if !ZLIB_INHIBITED + int result; result = gzread(file->handle.gz, buf, size * members) / size; -#else - abort(); -#endif + if ((result < 0) || ((gbsize_t)result < members)) { int errnum; const char *errtxt; @@ -234,6 +233,9 @@ gbfread(void *buf, const gbsize_t size, const gbsize_t members, gbfile *file) file->module, errnum, errtxt); } return (gbsize_t) result; +#else + fatal(NO_ZLIB); +#endif } else { int errno; @@ -302,7 +304,7 @@ gbfwrite(const void *buf, const gbsize_t size, const gbsize_t members, gbfile *f #if !ZLIB_INHIBITED result = gzwrite(file->handle.gz, buf, size * members) / size; #else - abort(); + fatal(NO_ZLIB); #endif } else { @@ -326,7 +328,7 @@ gbfflush(gbfile *file) #if !ZLIB_INHIBITED return gzflush(file->handle.gz, Z_SYNC_FLUSH); #else - abort(); + fatal(NO_ZLIB); #endif } else { @@ -356,7 +358,7 @@ gbferror(gbfile *file) #if !ZLIB_INHIBITED (void)gzerror(file->handle.gz, &errnum); #else - abort(); + fatal(NO_ZLIB); #endif } else { @@ -403,7 +405,7 @@ gbftell(gbfile *file) #if !ZLIB_INHIBITED return gztell(file->handle.gz); #else - abort(); + fatal(NO_ZLIB); #endif } else { @@ -418,7 +420,7 @@ gbfeof(gbfile *file) #if !ZLIB_INHIBITED return gzeof(file->handle.gz); #else - abort(); + fatal(NO_ZLIB); #endif } else { @@ -429,16 +431,18 @@ gbfeof(gbfile *file) int gbfungetc(const int c, gbfile *file) { + int r = -1; if (file->gzapi) { #if !ZLIB_INHIBITED - return gzungetc(c, file->handle.gz); + r = gzungetc(c, file->handle.gz); #else - abort(); + fatal(NO_ZLIB); #endif } else { - return ungetc(c, file->handle.std); + r = ungetc(c, file->handle.std); } + return r; } /* GPSBabel 'file' enhancements */ diff --git a/gpsbabel/msvc/GPSBabel.sln b/gpsbabel/msvc/GPSBabel.sln index 538236d6f..02748b73f 100644 --- a/gpsbabel/msvc/GPSBabel.sln +++ b/gpsbabel/msvc/GPSBabel.sln @@ -1,18 +1,20 @@ - Microsoft Visual Studio Solution File, Format Version 9.00 # Visual C++ Express 2005 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GPSBabel", "GPSBabel.vcproj", "{D81B30A1-C560-42BC-AE80-257FDDD484D8}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GPSBabel", "GPSBabel.vcproj", "{EB2609DB-5800-45B2-BCB2-06D72F389DCA}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 Release|Win32 = Release|Win32 + Unicode|Win32 = Unicode|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D81B30A1-C560-42BC-AE80-257FDDD484D8}.Debug|Win32.ActiveCfg = Debug|Win32 - {D81B30A1-C560-42BC-AE80-257FDDD484D8}.Debug|Win32.Build.0 = Debug|Win32 - {D81B30A1-C560-42BC-AE80-257FDDD484D8}.Release|Win32.ActiveCfg = Release|Win32 - {D81B30A1-C560-42BC-AE80-257FDDD484D8}.Release|Win32.Build.0 = Release|Win32 + {EB2609DB-5800-45B2-BCB2-06D72F389DCA}.Debug|Win32.ActiveCfg = Unicode|Win32 + {EB2609DB-5800-45B2-BCB2-06D72F389DCA}.Debug|Win32.Build.0 = Unicode|Win32 + {EB2609DB-5800-45B2-BCB2-06D72F389DCA}.Release|Win32.ActiveCfg = Release|Win32 + {EB2609DB-5800-45B2-BCB2-06D72F389DCA}.Release|Win32.Build.0 = Release|Win32 + {EB2609DB-5800-45B2-BCB2-06D72F389DCA}.Unicode|Win32.ActiveCfg = Unicode|Win32 + {EB2609DB-5800-45B2-BCB2-06D72F389DCA}.Unicode|Win32.Build.0 = Unicode|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/gpsbabel/msvc/GPSBabel.vcproj b/gpsbabel/msvc/GPSBabel.vcproj index 8fc9f48b1..98c9c4fb6 100644 --- a/gpsbabel/msvc/GPSBabel.vcproj +++ b/gpsbabel/msvc/GPSBabel.vcproj @@ -3,7 +3,7 @@ ProjectType="Visual C++" Version="8.00" Name="GPSBabel" - ProjectGUID="{D81B30A1-C560-42BC-AE80-257FDDD484D8}" + ProjectGUID="{EB2609DB-5800-45B2-BCB2-06D72F389DCA}" > + + + + + + + + + + + + + + + + + + + + @@ -238,6 +340,16 @@ BrowseInformation="1" /> + + + + + + + + @@ -314,6 +440,20 @@ BrowseInformation="1" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -536,6 +744,16 @@ BrowseInformation="1" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -882,6 +1220,16 @@ BrowseInformation="1" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1154,6 +1596,16 @@ BrowseInformation="1" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1546,6 +2132,16 @@ BrowseInformation="1" /> + + + + + + + + + + + + + + @@ -1670,6 +2300,16 @@ BrowseInformation="1" /> + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -2400,6 +3222,10 @@ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" > + + diff --git a/gpsbabel/msvc/config.h b/gpsbabel/msvc/config.h index 53a7498c3..0ca922303 100644 --- a/gpsbabel/msvc/config.h +++ b/gpsbabel/msvc/config.h @@ -20,3 +20,9 @@ /* 1 to enable shapefile support */ #undef SHAPELIB_ENABLED +#define ZLIB_INHIBITED 1 + +/* We really should figure out some way to get this from autoconf into + * a file so that the MSVC build can pick it up + */ +#define VERSION "1.3.0-development" diff --git a/gpsbabel/stmsdf.c b/gpsbabel/stmsdf.c index b90ce8bdd..e0f73e44c 100644 --- a/gpsbabel/stmsdf.c +++ b/gpsbabel/stmsdf.c @@ -52,8 +52,9 @@ typedef enum { static gbfile *fin, *fout; -typedef struct stmsdf_s { -} stmsdf_t; +// Empty structs aren't C89. But this wasn't being used anyway. +//typedef struct stmsdf_s { +//} stmsdf_t; static int lineno; static int datum; -- 2.30.2